
#ifndef TP_MAIN_LOOP_H
#define TP_MAIN_LOOP_H

#include "tp_source.h"
#include "tp_event.h"

TP_DECL_BEGIN

void tp_main_loop_init(void);

void tp_main_loop_uninit(void);

void tp_main_loop_quit(void);

/* 系统初始化运行之前增加source */
int tp_main_loop_add_source_2(TpSource* source);

/* 用于运行过程中增加source */
int tp_main_loop_add_source(TpSource* source);

/* 用于运行过程中删除source */
int tp_main_loop_remove_source(TpSource* source);

int tp_main_loop_run(void);

TP_DECL_END

#endif /*TP_MAIN_LOOP_H*/
